﻿/*
 * XCoder v3.2.2010.1014
 * 作者：SUN/SUN-PC
 * 时间：2010-12-24 16:02:16
 * 版权：版权所有 (C) 新生命开发团队 2010
*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using XCode;

namespace NewLife.YWS.Entities
{
    /// <summary>
    /// 交易记录
    /// </summary>
    [Serializable]
    [DataObject]
    [Description("交易记录")]
    [BindTable("Record", Description = "交易记录", ConnName = "YWS")]
    public partial class Record : Entity<Record>
    {
        #region 属性
        private Int32 _ID;
        /// <summary>
        /// 编号
        /// </summary>
        [Description("编号")]
        [DataObjectField(true, true, false, 10)]
        [BindColumn("ID", Description = "编号", DefaultValue = "", Order = 1)]
        public Int32 ID
        {
            get { return _ID; }
            set { if (OnPropertyChange("ID", value)) _ID = value; }
        }

        private Int32 _CustomerID;
        /// <summary>
        /// 客户ID
        /// </summary>
        [Description("客户ID")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("CustomerID", Description = "客户ID", DefaultValue = "", Order = 2)]
        public Int32 CustomerID
        {
            get { return _CustomerID; }
            set { if (OnPropertyChange("CustomerID", value)) _CustomerID = value; }
        }

        private String _Transactor;
        /// <summary>
        /// 经手人
        /// </summary>
        [Description("经手人")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Transactor", Description = "经手人", DefaultValue = "", Order = 3)]
        public String Transactor
        {
            get { return _Transactor; }
            set { if (OnPropertyChange("Transactor", value)) _Transactor = value; }
        }

        private DateTime _LeaveTime;
        /// <summary>
        /// 出厂日期
        /// </summary>
        [Description("出厂日期")]
        [DataObjectField(false, false, true, 23)]
        [BindColumn("LeaveTime", Description = "出厂日期", DefaultValue = "", Order = 4)]
        public DateTime LeaveTime
        {
            get { return _LeaveTime; }
            set { if (OnPropertyChange("LeaveTime", value)) _LeaveTime = value; }
        }

        private String _OutlineSize;
        /// <summary>
        /// 机器外形尺寸
        /// </summary>
        [Description("机器外形尺寸")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("OutlineSize", Description = "机器外形尺寸", DefaultValue = "", Order = 5)]
        public String OutlineSize
        {
            get { return _OutlineSize; }
            set { if (OnPropertyChange("OutlineSize", value)) _OutlineSize = value; }
        }

        private String _Attachment;
        /// <summary>
        /// 附送配件
        /// </summary>
        [Description("附送配件")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Attachment", Description = "附送配件", DefaultValue = "", Order = 6)]
        public String Attachment
        {
            get { return _Attachment; }
            set { if (OnPropertyChange("Attachment", value)) _Attachment = value; }
        }

        private String _Type;
        /// <summary>
        /// 点胶阀门类型
        /// </summary>
        [Description("点胶阀门类型")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Type", Description = "点胶阀门类型", DefaultValue = "", Order = 7)]
        public String Type
        {
            get { return _Type; }
            set { if (OnPropertyChange("Type", value)) _Type = value; }
        }

        private String _Model;
        /// <summary>
        /// 混合管型号
        /// </summary>
        [Description("混合管型号")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Model", Description = "混合管型号", DefaultValue = "", Order = 8)]
        public String Model
        {
            get { return _Model; }
            set { if (OnPropertyChange("Model", value)) _Model = value; }
        }

        private String _VacuumpumpSpec;
        /// <summary>
        /// 真空泵规格
        /// </summary>
        [Description("真空泵规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("VacuumpumpSpec", Description = "真空泵规格", DefaultValue = "", Order = 9)]
        public String VacuumpumpSpec
        {
            get { return _VacuumpumpSpec; }
            set { if (OnPropertyChange("VacuumpumpSpec", value)) _VacuumpumpSpec = value; }
        }

        private String _Kind;
        /// <summary>
        /// 数据显示屏种类
        /// </summary>
        [Description("数据显示屏种类")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Kind", Description = "数据显示屏种类", DefaultValue = "", Order = 10)]
        public String Kind
        {
            get { return _Kind; }
            set { if (OnPropertyChange("Kind", value)) _Kind = value; }
        }

        private String _Groupings;
        /// <summary>
        /// 计量泵组别
        /// </summary>
        [Description("计量泵组别")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Groupings", Description = "计量泵组别", DefaultValue = "", Order = 11)]
        public String Groupings
        {
            get { return _Groupings; }
            set { if (OnPropertyChange("Groupings", value)) _Groupings = value; }
        }

        private Double _Size;
        /// <summary>
        /// 计量泵尺寸
        /// </summary>
        [Description("计量泵尺寸")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("Size", Description = "计量泵尺寸", DefaultValue = "", Order = 12)]
        public Double Size
        {
            get { return _Size; }
            set { if (OnPropertyChange("Size", value)) _Size = value; }
        }

        private String _MeteringpumpSpec;
        /// <summary>
        /// 计量泵密封件规格
        /// </summary>
        [Description("计量泵密封件规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("MeteringpumpSpec", Description = "计量泵密封件规格", DefaultValue = "", Order = 13)]
        public String MeteringpumpSpec
        {
            get { return _MeteringpumpSpec; }
            set { if (OnPropertyChange("MeteringpumpSpec", value)) _MeteringpumpSpec = value; }
        }

        private Double _PresSize;
        /// <summary>
        /// 压力桶大小
        /// </summary>
        [Description("压力桶大小")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("PresSize", Description = "压力桶大小", DefaultValue = "", Order = 14)]
        public Double PresSize
        {
            get { return _PresSize; }
            set { if (OnPropertyChange("PresSize", value)) _PresSize = value; }
        }

        private String _SupplypipeSpec;
        /// <summary>
        /// 进料管规格
        /// </summary>
        [Description("进料管规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("SupplypipeSpec", Description = "进料管规格", DefaultValue = "", Order = 15)]
        public String SupplypipeSpec
        {
            get { return _SupplypipeSpec; }
            set { if (OnPropertyChange("SupplypipeSpec", value)) _SupplypipeSpec = value; }
        }

        private String _DischargeSpec;
        /// <summary>
        /// 出料管规格
        /// </summary>
        [Description("出料管规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("DischargeSpec", Description = "出料管规格", DefaultValue = "", Order = 16)]
        public String DischargeSpec
        {
            get { return _DischargeSpec; }
            set { if (OnPropertyChange("DischargeSpec", value)) _DischargeSpec = value; }
        }

        private String _GroupingsB;
        /// <summary>
        /// B料计量泵组别
        /// </summary>
        [Description("B料计量泵组别")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("GroupingsB", Description = "B料计量泵组别", DefaultValue = "", Order = 17)]
        public String GroupingsB
        {
            get { return _GroupingsB; }
            set { if (OnPropertyChange("GroupingsB", value)) _GroupingsB = value; }
        }

        private Double _SizeB;
        /// <summary>
        /// B料计量泵尺寸
        /// </summary>
        [Description("B料计量泵尺寸")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("SizeB", Description = "B料计量泵尺寸", DefaultValue = "", Order = 18)]
        public Double SizeB
        {
            get { return _SizeB; }
            set { if (OnPropertyChange("SizeB", value)) _SizeB = value; }
        }

        private String _MeteringpumpSpecB;
        /// <summary>
        /// B料计量泵密封件规格
        /// </summary>
        [Description("B料计量泵密封件规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("MeteringpumpSpecB", Description = "B料计量泵密封件规格", DefaultValue = "", Order = 19)]
        public String MeteringpumpSpecB
        {
            get { return _MeteringpumpSpecB; }
            set { if (OnPropertyChange("MeteringpumpSpecB", value)) _MeteringpumpSpecB = value; }
        }

        private Double _PresSizeB;
        /// <summary>
        /// B料压力桶大小
        /// </summary>
        [Description("B料压力桶大小")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("PresSizeB", Description = "B料压力桶大小", DefaultValue = "", Order = 20)]
        public Double PresSizeB
        {
            get { return _PresSizeB; }
            set { if (OnPropertyChange("PresSizeB", value)) _PresSizeB = value; }
        }

        private String _SupplypipeSpecB;
        /// <summary>
        /// B料进料管规格
        /// </summary>
        [Description("B料进料管规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("SupplypipeSpecB", Description = "B料进料管规格", DefaultValue = "", Order = 21)]
        public String SupplypipeSpecB
        {
            get { return _SupplypipeSpecB; }
            set { if (OnPropertyChange("SupplypipeSpecB", value)) _SupplypipeSpecB = value; }
        }

        private String _DischargeSpecB;
        /// <summary>
        /// B料出料管规格
        /// </summary>
        [Description("B料出料管规格")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("DischargeSpecB", Description = "B料出料管规格", DefaultValue = "", Order = 22)]
        public String DischargeSpecB
        {
            get { return _DischargeSpecB; }
            set { if (OnPropertyChange("DischargeSpecB", value)) _DischargeSpecB = value; }
        }

        private String _Pic;
        /// <summary>
        /// 
        /// </summary>
        [Description("")]
        [DataObjectField(false, false, true, 100)]
        [BindColumn("Pic", Description = "", DefaultValue = "", Order = 23)]
        public String Pic
        {
            get { return _Pic; }
            set { if (OnPropertyChange("Pic", value)) _Pic = value; }
        }

        private DateTime _AddTime;
        /// <summary>
        /// 添加时间
        /// </summary>
        [Description("添加时间")]
        [DataObjectField(false, false, true, 23)]
        [BindColumn("AddTime", Description = "添加时间", DefaultValue = "", Order = 24)]
        public DateTime AddTime
        {
            get { return _AddTime; }
            set { if (OnPropertyChange("AddTime", value)) _AddTime = value; }
        }

        private String _Remark;
        /// <summary>
        /// 备注
        /// </summary>
        [Description("备注")]
        [DataObjectField(false, false, true, 100)]
        [BindColumn("Remark", Description = "备注", DefaultValue = "", Order = 25)]
        public String Remark
        {
            get { return _Remark; }
            set { if (OnPropertyChange("Remark", value)) _Remark = value; }
        }

        private String _Name;
        /// <summary>
        /// 名称
        /// </summary>
        [Description("名称")]
        [DataObjectField(false, false, true, 50)]
        [BindColumn("Name", Description = "名称", DefaultValue = "", Order = 26)]
        public String Name
        {
            get { return _Name; }
            set { if (OnPropertyChange("Name", value)) _Name = value; }
        }

        private Int32 _MachineID;
        /// <summary>
        /// 机器ID
        /// </summary>
        [Description("机器ID")]
        [DataObjectField(false, false, true, 10)]
        [BindColumn("MachineID", Description = "机器ID", DefaultValue = "", Order = 27)]
        public Int32 MachineID
        {
            get { return _MachineID; }
            set { if (OnPropertyChange("MachineID", value)) _MachineID = value; }
        }
        #endregion

        #region 获取/设置 字段值
        /// <summary>
        /// 获取/设置 字段值。
        /// 一个索引，基类使用反射实现。
        /// 派生实体类可重写该索引，以避免反射带来的性能损耗
        /// </summary>
        /// <param name="name">字段名</param>
        /// <returns></returns>
        public override Object this[String name]
        {
            get
            {
                switch (name)
                {
                    case "ID": return ID;
                    case "CustomerID": return CustomerID;
                    case "Transactor": return Transactor;
                    case "LeaveTime": return LeaveTime;
                    case "OutlineSize": return OutlineSize;
                    case "Attachment": return Attachment;
                    case "Type": return Type;
                    case "Model": return Model;
                    case "VacuumpumpSpec": return VacuumpumpSpec;
                    case "Kind": return Kind;
                    case "Groupings": return Groupings;
                    case "Size": return Size;
                    case "MeteringpumpSpec": return MeteringpumpSpec;
                    case "PresSize": return PresSize;
                    case "SupplypipeSpec": return SupplypipeSpec;
                    case "DischargeSpec": return DischargeSpec;
                    case "GroupingsB": return GroupingsB;
                    case "SizeB": return SizeB;
                    case "MeteringpumpSpecB": return MeteringpumpSpecB;
                    case "PresSizeB": return PresSizeB;
                    case "SupplypipeSpecB": return SupplypipeSpecB;
                    case "DischargeSpecB": return DischargeSpecB;
                    case "Pic": return Pic;
                    case "AddTime": return AddTime;
                    case "Remark": return Remark;
                    case "Name": return Name;
                    case "MachineID": return MachineID;
                    default: return base[name];
                }
            }
            set
            {
                switch (name)
                {
                    case "ID": _ID = Convert.ToInt32(value); break;
                    case "CustomerID": _CustomerID = Convert.ToInt32(value); break;
                    case "Transactor": _Transactor = Convert.ToString(value); break;
                    case "LeaveTime": _LeaveTime = Convert.ToDateTime(value); break;
                    case "OutlineSize": _OutlineSize = Convert.ToString(value); break;
                    case "Attachment": _Attachment = Convert.ToString(value); break;
                    case "Type": _Type = Convert.ToString(value); break;
                    case "Model": _Model = Convert.ToString(value); break;
                    case "VacuumpumpSpec": _VacuumpumpSpec = Convert.ToString(value); break;
                    case "Kind": _Kind = Convert.ToString(value); break;
                    case "Groupings": _Groupings = Convert.ToString(value); break;
                    case "Size": _Size = Convert.ToDouble(value); break;
                    case "MeteringpumpSpec": _MeteringpumpSpec = Convert.ToString(value); break;
                    case "PresSize": _PresSize = Convert.ToDouble(value); break;
                    case "SupplypipeSpec": _SupplypipeSpec = Convert.ToString(value); break;
                    case "DischargeSpec": _DischargeSpec = Convert.ToString(value); break;
                    case "GroupingsB": _GroupingsB = Convert.ToString(value); break;
                    case "SizeB": _SizeB = Convert.ToDouble(value); break;
                    case "MeteringpumpSpecB": _MeteringpumpSpecB = Convert.ToString(value); break;
                    case "PresSizeB": _PresSizeB = Convert.ToDouble(value); break;
                    case "SupplypipeSpecB": _SupplypipeSpecB = Convert.ToString(value); break;
                    case "DischargeSpecB": _DischargeSpecB = Convert.ToString(value); break;
                    case "Pic": _Pic = Convert.ToString(value); break;
                    case "AddTime": _AddTime = Convert.ToDateTime(value); break;
                    case "Remark": _Remark = Convert.ToString(value); break;
                    case "Name": _Name = Convert.ToString(value); break;
                    case "MachineID": _MachineID = Convert.ToInt32(value); break;
                    default: base[name] = value; break;
                }
            }
        }
        #endregion

        #region 字段名
        /// <summary>
        /// 取得交易记录字段名的快捷方式
        /// </summary>
        public class _
        {
            ///<summary>
            /// 编号
            ///</summary>
            public const String ID = "ID";

            ///<summary>
            /// 客户ID
            ///</summary>
            public const String CustomerID = "CustomerID";

            ///<summary>
            /// 经手人
            ///</summary>
            public const String Transactor = "Transactor";

            ///<summary>
            /// 出厂日期
            ///</summary>
            public const String LeaveTime = "LeaveTime";

            ///<summary>
            /// 机器外形尺寸
            ///</summary>
            public const String OutlineSize = "OutlineSize";

            ///<summary>
            /// 附送配件
            ///</summary>
            public const String Attachment = "Attachment";

            ///<summary>
            /// 点胶阀门类型
            ///</summary>
            public const String Type = "Type";

            ///<summary>
            /// 混合管型号
            ///</summary>
            public const String Model = "Model";

            ///<summary>
            /// 真空泵规格
            ///</summary>
            public const String VacuumpumpSpec = "VacuumpumpSpec";

            ///<summary>
            /// 数据显示屏种类
            ///</summary>
            public const String Kind = "Kind";

            ///<summary>
            /// 计量泵组别
            ///</summary>
            public const String Groupings = "Groupings";

            ///<summary>
            /// 计量泵尺寸
            ///</summary>
            public const String Size = "Size";

            ///<summary>
            /// 计量泵密封件规格
            ///</summary>
            public const String MeteringpumpSpec = "MeteringpumpSpec";

            ///<summary>
            /// 压力桶大小
            ///</summary>
            public const String PresSize = "PresSize";

            ///<summary>
            /// 进料管规格
            ///</summary>
            public const String SupplypipeSpec = "SupplypipeSpec";

            ///<summary>
            /// 出料管规格
            ///</summary>
            public const String DischargeSpec = "DischargeSpec";

            ///<summary>
            /// B料计量泵组别
            ///</summary>
            public const String GroupingsB = "GroupingsB";

            ///<summary>
            /// B料计量泵尺寸
            ///</summary>
            public const String SizeB = "SizeB";

            ///<summary>
            /// B料计量泵密封件规格
            ///</summary>
            public const String MeteringpumpSpecB = "MeteringpumpSpecB";

            ///<summary>
            /// B料压力桶大小
            ///</summary>
            public const String PresSizeB = "PresSizeB";

            ///<summary>
            /// B料进料管规格
            ///</summary>
            public const String SupplypipeSpecB = "SupplypipeSpecB";

            ///<summary>
            /// B料出料管规格
            ///</summary>
            public const String DischargeSpecB = "DischargeSpecB";

            ///<summary>
            /// 
            ///</summary>
            public const String Pic = "Pic";

            ///<summary>
            /// 添加时间
            ///</summary>
            public const String AddTime = "AddTime";

            ///<summary>
            /// 备注
            ///</summary>
            public const String Remark = "Remark";

            ///<summary>
            /// 名称
            ///</summary>
            public const String Name = "Name";

            ///<summary>
            /// 机器ID
            ///</summary>
            public const String MachineID = "MachineID";
        }
        #endregion
    }
}